<?php

// 定义服务器 IP 地址和端口
$server_ip = "192.168.3.25";
$server_port = 8888;

// 创建服务器套接字
$socket = socket_create(AF_INET, SOCK_STREAM, 0);
if (!$socket) {
    echo "创建服务器套接字失败：" . socket_strerror(socket_last_error()) . "\n";
    exit;
}

// 绑定服务器套接字到 IP 地址和端口
$result = socket_bind($socket, $server_ip, $server_port);
if (!$result) {
    echo "绑定服务器套接字失败：" . socket_strerror(socket_last_error()) . "\n";
    exit;
}

// 监听服务器套接字
$result = socket_listen($socket, 5);
if (!$result) {
    echo "监听服务器套接字失败：" . socket_strerror(socket_last_error()) . "\n";
    exit;
}

// 循环接受客户端连接
while (true) {
    // 获取请求头
    $headers = getallheaders();

    // 打印请求头
    var_dump($headers);

    // 获取请求正文
    $body = file_get_contents('php://input');

    // 打印请求正文
    var_dump($body);
    // 接受客户端连接
    $client_socket = socket_accept($socket);
    if (!$client_socket) {
        echo "接受客户端连接失败：" . socket_strerror(socket_last_error()) . "\n";
        continue;
    }

    // 从客户端接收数据
    $data = socket_read($client_socket, 1024);
    if (!$data) {
        echo "从客户端接收数据失败：" . socket_strerror(socket_last_error()) . "\n";
        continue;
    }

    // 打印接收到的数据
    echo "接收到的数据：" . $data . "\n";

    // 处理接收到的数据
    // ...

    // 关闭客户端连接
    socket_close($client_socket);
}

// 关闭服务器套接字
socket_close($socket);

?>